A device management (DM) specification of the Open Mobile Alliance (OMA) defines a remote control technology for terminal management, diagnosis and maintenance. In the remote control technology, a server can perform such management operations as firmware update, software download, diagnosis monitoring, and backup and restoration through a DM tree. The terminal may be a mobile phone, a personal digital assistant (PDA), a computer, an embedded device or a vehicle mounted system.
FIG. 1 shows an overall structure of the DM specification. A DM agent in a terminal is adapted to interpret and run management commands sent from a DM server; a DM tree stored in the terminal may be considered to be an interface through which the DM server manages the terminal via a DM protocol, including some basic management objects (MOs); the DM server controls the terminal resource by operating the MO; commands include Get, Replace, Exec, Copy, and Delete. FIG. 2 shows a structure of a DM tree.
With continuous improvement of terminal capabilities and diversification and personalization of user demands, services from multiple service providers are required. The service providers may be value-added service providers, enterprises or operators, which may provide services through different servers.
The access rights of the servers are mainly controlled through an access control list (ACL).
Each node in the DM tree is allocated an ACL. The rights of the servers to operate the nodes in the DM tree are controlled through the ACL. The following describes an ACL allocation method:
The ACL of the root node in the DM tree is not null. ACLs of other internal nodes and leaf nodes under the root node may be null or assigned values. If the ACLs are null, the internal nodes or leaf nodes inherit the ACL of their parent node by default. The rule for implementing the ACL is as follows: Each command is assigned an ID of a server that can operate the ACL, and the server that has the rights to replace the parent node may modify the ACL of child nodes.
According to the current DM protocol, access control may include the following four aspects:
1. The ACL of the root node is set to “Add=*&Get=*”, indicating that any server can add nodes to the root node.
2. If the ACL of a node is null, the node inherits the rights of its parent node.
3. A server that has the rights to modify a node can modify the rights of the server of the node (except the leaf node).
4. A server that has the rights to replace the parent node may modify the ACL of child nodes.
The prior art has at least the following defects:
FIG. 3 shows a structure of a DM tree and its internal nodes that are allocated ACLs via the current DM protocol. As shown in FIG. 3, the ACL of the root node in the DM tree is set to “Add=*&Get=*”, and “Add=*” cannot be modified by any server, which indicates that any server can have the rights to add nodes. Thus, any server can create an MO in the terminal and manage and operate the terminal by using the created MO. In this case, each server has the same rights, which causes a failure to control the MO.
In addition, the type of MOs created by the server cannot be limited. That is, the server may create any MO. For example, assume server A is responsible for firmware update only, the server A is forbidden to create a software component management object (SCOMO). However, in the prior art, the server has the Add rights in the root node, so that the server A still can create the SCOMO in the terminal. This case is similar to the creation of a firmware update management object (FUMO) or a device capability management object (DCMO).